import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import javax.servlet.http.HttpSession;
import java.io.IOException;

@WebServlet("/index")
public class IndexServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 返回一个主页(下面写的简单的欢迎(html)片段)

        // 此处 getSession 的参数必须是 false 前面在登录过程中 已经创建过会话了 此处是要直接获取到之前的会话
        HttpSession session = req.getSession(false);

        // 此处需要得到用户名是啥 从 HttpSession 中就能拿到
        String username = (String) session.getAttribute("username");

        // 还从会话中取出 count  因为getAttribute()返回是一个object类 是一个对象 我们需要用Integer包装类来接收不能用int
        Integer count = (Integer) session.getAttribute("count");
        count += 1;
        // 把自增之后的值写回到会话中
        //                        key     value
        session.setAttribute("count", count);
        resp.setContentType("text/html;charset=utf8");
        resp.getWriter().write("<h3>欢迎你! " + username + " 这是第 " + count + " 次访问主页 </h3>");
    }
}